From 37a5d33b0e50c87ef48d481c454cd83d3785f5d1 Mon Sep 17 00:00:00 2001 From: "awilliam@xenbuild.aw" Date: Mon, 28 Aug 2006 13:11:17 -0600 Subject: [PATCH] [IA64] Modify destroy code for PV-on-HVM on IPF Signed-off-by: Tsunehisa Doi Signed-off-by: Tomonari Horikoshi --- xen/arch/ia64/xen/domain.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/xen/arch/ia64/xen/domain.c b/xen/arch/ia64/xen/domain.c index 699bd6bff7..5eca64e9a3 100644 --- a/xen/arch/ia64/xen/domain.c +++ b/xen/arch/ia64/xen/domain.c @@ -400,8 +400,16 @@ fail_nomem: void arch_domain_destroy(struct domain *d) { BUG_ON(d->arch.mm.pgd != NULL); - if (d->shared_info != NULL) - free_xenheap_pages(d->shared_info, get_order_from_shift(XSI_SHIFT)); + if (d->shared_info != NULL) { + /* If this domain is domVTi, the shared_info page may + * be replaced with domheap. Then the shared_info page + * frees in relinquish_mm(). + */ + if (IS_XEN_HEAP_FRAME(virt_to_page(d->shared_info))) { + free_xenheap_pages(d->shared_info, + get_order_from_shift(XSI_SHIFT)); + } + } if (d->arch.shadow_bitmap != NULL) xfree(d->arch.shadow_bitmap); -- 2.30.2